-- Prueba inserción de datos de "roles".
INSERT INTO roles(id,name) VALUES(1,'ROOT'),(2,'ADMINISTRADOR'),(3,'USUARIOS');

-- Asignar un rol que ya existe (error).
INSERT INTO roles(name) VALUES(1,'ROOT');

-- Prueba inserción de datos de "usuarios".
INSERT INTO users(name,username,email,password) VALUES
('RICARDO GARCÍA JIMÉNEZ','ricardog08','ricardog08@disroot.org', '123456'),
('JUAN JOSÉ RAMÍREZ LÓPEZ','juanjr','juan@gmail.com', '123456');

-- Registrar un usuario con un e-mail registrado (error).
INSERT INTO users(name,username,email,password) VALUES
('FRANCISCO SOLIS MARTÎNEZ', 'paco', 'juan@gmail.com', '123456');

INSERT INTO users(name,username,email,password) VALUES
('FRANCISCO SOLIS MARTÎNEZ', 'paco', 'paco@gmail.com', '123456');
INSERT INTO users(name,username,email,password) VALUES
('ALEJANDRO GARCÍA JIMÉNEZ', 'ale', 'ale@gmail.com','123456');

-- Registrar un usuario con el mismo apodo (error).
INSERT INTO users(name,username,email,password) VALUES
('FRANCISCO SOLIS MARTÎNEZ', 'paco', 'pacosx@gmail.com', '123456');



-- Prueba inserción de datos de "verificaciones".
INSERT INTO verifications VALUES
(1,'fb82bbb96f0f6f55f47bf7b4c02e6ad0cfae8185c85cbbc3f08f4adf4411d4ff',20210408),
(2,'fb82bbb96f0f6fd5f47bf7b4c02e6af0cfae8185c85cbbc3f08f4adf4411d4ff',20210409),
(4,'fb82bbb96f0f6f55f47bf7b4c02e6ad0cfae8185c85cbbc3f08f4adf2411s4ff',20210410),
(5,'fb82bbb96f0f6f55f47bd7b4ch2e6ad0cfae8185c85cbbc3f08f4adf4411d4ff',20210408);

-- Registra una verificación de un usuario que tiene un registro previo (error).
INSERT INTO verifications VALUES(1,'fb82bbb96f0f6f55f47bd7b4ch2e6ad0cfae8185c85cbbc3f08f4adf4411d4ff',20210408);

-- Registrar una verificación de un usuario que no existe (error).
INSERT INTO verifications VALUES(6,'fb82bbb96f0f6f55f47bd7b4dddch2e6ad0cfae8185c85cbbc3f08f4adf4411d4ff',20210408);



-- Prueba inserción de datos de "perfiles".
INSERT INTO profiles VALUES
(1,'/avatar/1','/background/1',NULL),
(2,'/avatar/2','/background/2',NULL),
(4,NULL,NULL,NULL);

INSERT INTO profiles VALUES(1,'/avatar/1','/background/1',NULL);

-- La ruta del background de un usuario coincide con el de otro usuario (error).
INSERT INTO profiles VALUES(5,'/avatar/5','/background/1',NULL);

-- La ruta del avatar de un usuario coincide con el de otro usuario (error).
INSERT INTO profiles VALUES(5,'/avatar/1','/background/5',NULL);

-- La ruta del avatar y del background de un usuario coincide con el de otro usuario (error).
INSERT INTO profiles VALUES(5,'/avatar/1','/background/1',NULL);

INSERT INTO profiles VALUES(5,NULL,NULL,NULL);



-- Prueba inserción de datos de "artículos".
INSERT INTO articles(user_id,title,url,path_file,path_cover) VALUES
(1,'INTERFACES GRÁFICAS CON BASH', '/posts/2021/04/08/interfaces-graficas-con-bash','/files/1','/covers/1'),
(2,'Programación shell scripting', '/posts/2021/04/08/programacion-shell-scripting','/files/2','/covers/2'),
(1,'Programando con lua', '/posts/2021/04/08/programando-con-lua','/files/3','/covers/3');

INSERT INTO articles(user_id,title,url,path_file,path_cover) VALUES(1,'INTERFACES GRÁFICAS CON BASH', '/posts/2021/04/08/interfaces-graficas-con-bash','/files/1','/covers/4');
INSERT INTO articles(user_id,title,url,path_file,path_cover) VALUES(2,'INTERFACES GRÁFICAS CON BASH', '/posts/2021/04/08/interfaces-graficas-con-bash','/files/4','/covers/1');
INSERT INTO articles(user_id,title,url,path_file,path_cover) VALUES(1,'INTERFACES GRÁFICAS CON BASH', '/posts/2021/04/08/interfaces-graficas-con-bash','/files/4','/covers/4');
INSERT INTO articles(user_id,title,url,path_file,path_cover) VALUES(2,'INTERFACES GRÁFICAS CON BASH', '/posts/2021/04/08/interfaces-graficas-con-bash','/files/1','/covers/1');
INSERT INTO articles(user_id,title,url,path_file,path_cover) VALUES(1,'INTERFACES GRÁFICAS CON BASH', '/posts/2021/04/08/interfaces-graficas-con-bashx','/files/1','/covers/4');
INSERT INTO articles(user_id,title,url,path_file,path_cover) VALUES(2,'INTERFACES GRÁFICAS CON BASH', '/posts/2021/04/08/interfaces-graficas-con-bashx','/files/4','/covers/1');
INSERT INTO articles(user_id,title,url,path_file,path_cover) VALUES(1,'INTERFACES GRÁFICAS CON BASH', '/posts/2021/04/08/interfaces-graficas-con-bashx','/files/1','/covers/1');
INSERT INTO articles(user_id,title,url,path_file,path_cover) VALUES(5,'INTERFACES GRÁFICAS CON BASH', '/posts/2021/04/08/interfaces-graficas-con-bashx','/files/11','/covers/11');



-- Prueba inserción de datos "categoría".
INSERT INTO categories(name) VALUES('SERVIDORES'),('LINUX'),('SHELL'),('GNU');
-- Categoría repetida (error).
INSERT INTO categories(name) VALUES('SERVIDORES');



-- Prueba inserción de datos "categorias por artículo".
INSERT INTO categories_article(article_id,categorie_id) VALUES(1,3);
(2,3),
(1,1),
(3,1);

-- Si a un artículo se le asigna la misma categoría (error).
INSERT INTO categories_article(article_id,categorie_id) VALUES(1,3);

-- Asignar una categoría a un artículo que no existe (error).
INSERT INTO categories_article(article_id,categorie_id) VALUES(4,1);

-- Asigna una categoría que no existe a un artículo (error).
INSERT INTO categories_article(article_id,categorie_id) VALUES(1,5);



-- Prueba inserción de datos "autorización".
INSERT INTO authorizations VALUES
(1,1,CURRENT_TIMESTAMP(6)),
(3,2,CURRENT_TIMESTAMP(6));

-- Un usuario puede autorizar varios artículos al mismo tiempo (correcto).
INSERT INTO authorizations VALUES
(1,1,CURRENT_TIMESTAMP(6)),
(3,1,CURRENT_TIMESTAMP(6));

-- Usuarios y artículos que no existen (error).
INSERT INTO authorizations VALUES (1,3,CURRENT_TIMESTAMP(6));
INSERT INTO authorizations VALUES (5,2,CURRENT_TIMESTAMP(6));
INSERT INTO authorizations VALUES (5,3,CURRENT_TIMESTAMP(6));

-- Un usuario autoriza el mismo artículo al mismo tiempo (error).
INSERT INTO authorizations VALUES
(1,1,CURRENT_TIMESTAMP(6)),
(1,1,CURRENT_TIMESTAMP(6));

-- Dos o más usuarios autorizan el mismo artículo al mismo tiempo (error).
INSERT INTO authorizations VALUES
(1,1,CURRENT_TIMESTAMP(6)),
(1,2,CURRENT_TIMESTAMP(6));



-- Prueba inserción de datos "comentarios".
INSERT INTO comments VALUES
(5,2,'Deja de escribir artículos de mierda.',CURRENT_TIMESTAMP(6)),
(2,1,'Me gusto el apartado de la formula.',CURRENT_TIMESTAMP(6)),
(1,1,'Sanchez es un pendejo.',CURRENT_TIMESTAMP(6)),
(4,2,'Artículo de mierda.',CURRENT_TIMESTAMP(6));;

-- Un usuario comenta varios artículos al mismo tiempo (error).
INSERT INTO comments VALUES
(1,1,'Me gusto el apartado de la formula.',CURRENT_TIMESTAMP(6)),
(1,3,'Sanchez es un pendejo.',CURRENT_TIMESTAMP(6)),
(1,2,'Artículo de mierda.',CURRENT_TIMESTAMP(6));

-- Un usuario que no existe comenta un artículo (error).
INSERT INTO comments VALUES (6,1,'Me gusto el apartado de la formula.',CURRENT_TIMESTAMP(6));

-- Un usuario y artículo que no existen (error).
INSERT INTO comments VALUES (6,12,'Me gusto el apartado de la formula.',CURRENT_TIMESTAMP(6));

-- Un usuario comenta un artículo que no existe (error).
INSERT INTO comments VALUES (1,5,'Me gusto el apartado de la formula.',CURRENT_TIMESTAMP(6));



-- Prueba inserción de datos "favoritos"
INSERT INTO favorites VALUES
(1,1),
(1,2),
(2,1),
(5,2);

-- Un usuario agrega nuevamente a favoritos un artículo (error).
INSERT INTO favorites VALUES(1,1);

-- Un usuario que no existe agrega un artículo a favoritos (error).
INSERT INTO favorites VALUES(8,1);

-- Un usuario agrega a favoritos un artículo que no existe (error).
INSERT INTO favorites VALUES(1,8);